A computer system manages multiple resources, such as computing power, network access and memory storage. The multiple resources are of course not flawless, in the sense that the multiple resources never fail or become inaccessible for some other reason, such as power failure, overload or the like. Therefore, it has become customary to duplicate the computer system.
In a known example, there is a first computer system that is actively used for managing a task. In addition thereto, a second computer system is ready to take over management of the task, when the first computer system fails. In this manner, the management of the task is made more reliable. According to this example, all components, such as processing units, memory units, network interfaces, etc., of the first computer system needs to be duplicated.
Disadvantageously, the entire computer system needs to be duplicated even if some of the components may be more prone to fail than other components.
Data center hardware architectures that differ significantly for the above mentioned computer systems are arising. These data center architectures, sometimes referred to as disaggregated hardware type of architectures, includes examples like the Intel Rack Scale architecture, HyperScale Datacenter Systems or the like. By combining the disaggregated hardware architecture with optical interconnect, traditional distance and capacity limitations of electrical connections are alleviated. This enables a more efficient pooling of resources, which is expected to have a positive impact on utilization and energy consumption. A disaggregated hardware system of this kind, thus, typically comprises multiple pools of computing resources, multiple pools of memory resources, etc. This is in contrast to conventional computer systems, in which the computer system is built up of computers, where each computer is a stand-alone fully working entity, such as a Personal Computer (PC) or the like. In detail, the stand-alone fully working entity includes a motherboard, hard drive, random access memory, network interface, one or more processors and the like.
In a particular example, memory pages are allocated in the multiple pools of memory in the disaggregated hardware system. A problem may thus be how to manage availability of the memory pages of the disaggregated hardware system in an efficient manner.